A blockchain may be used as a public ledger to store information. Although, primarily used for financial transactions, a blockchain can store various information related to goods and services (i.e., products, packages, status, etc.). A decentralized scheme provides authority and trust to a decentralized network and enables its nodes to continuously and sequentially record their transactions on a public “block”, creating a unique “chain” referred to as a blockchain. Cryptography, via hash codes, is used to secure an authentication of a transaction source and removes a central intermediary. Blockchain is a distributed database that maintains a continuously-growing list of records in a blockchain's blocks, which are secured from tampering and revision due to their immutable properties. Each block contains a timestamp and a link to a previous block. Blockchain can be used to hold, track, transfer and verify information. Since blockchain is a distributed system, before adding a transaction to a blockchain ledger, all peers need to reach a consensus status.
Conventionally, prioritization is used in many types of networks as not all “requests to be processed” and “data to be stored” have equal importance. Priority needs to be determined and enforced in a decentralized manner. Directly applying existing techniques can degenerate a blockchain network into a centrally controlled system. Permissioned blockchain networks are complex distributed systems with multiple interacting heterogeneous processes/components, such as transaction execution, consensus, ledger validation and commitment phases. The enforcement efforts needs to enforce priority at multiple stages of a transaction's processing, as enforcing priority in one component may not translate into a differentiated service. Currently all the requests related to blockchain transactions are processed with equal importance, more specifically in a sequential manner with a fixed order. However, there are scenarios where fast tracking or slowing down the transactions in a blockchain would be beneficial. Critical transactions may require precedence over normal transactions (e.g., financial, healthcare, etc.). System transactions may require precedence over client transactions. Write transactions that changes the state of the system may require precedence over the query (read) transactions.
Permissionless blockchain systems have a natural approach to achieving prioritization using transaction fees/cryptocurrency. For example, a higher fee paid for a transaction enables blockchain miners to have a greater incentive to add that transaction to a block, and the transaction will be executed faster than other transactions. A transaction could get postponed for an indefinite time when it's passed over for higher rewarded transactions. This approach is impractical in permissioned blockchain networks, that aim to guarantee transaction execution once submitted.